// 引入Vue
import Vue from 'vue'
// 引入Vuex
import Vuex,{Store} from 'vuex'
import axios from 'axios'

// 使用Vuex插件
Vue.use(Vuex)

// 创建并导出一个Store的实例对象
export default new Store({
  // actions中放着可以响应组件中“动作”的方法 ——  例子：服务员
  actions:{
    /* jia(context,value){
      context.commit('JIA',value)
    }, */
    /* jian(context,value){
      this.commit('JIAN',value)
    }, */
    jiaOdd(context,value){
      if(context.state.sum % 2){
        context.commit('JIA',value)
      }
    },
    jiaWait({commit},value){
      setTimeout(() => {
        commit('JIA',value)
      }, 1000);
    },
    jiaServer({commit}){
      axios.get('https://api.uomg.com/api/rand.qinghua?format=json').then(
        response => {
          console.log(response.data.content)
          commit('JIA',response.data.content.length)
        },
        error => {
          alert(error.message)
        }
      )
    }
  },
  // mutations中放着可以修改state中数据的方法 —— 例子：厨师
  mutations:{
    JIA(state,value){
      state.sum += value
    },
    JIAN(state,value){
      state.sum -= value
    }
  },
  // state是Vuex中专门用于保存数据的 —— 例子：原材料
  state:{
    sum:1
  }
})